package com.jvm.classLife;

/**
 * 当子类 b1 继承父类 a1 时
 * b1.a 和 a1.a 是同一个变量（因为 static 成员不参与继承覆盖）。
 */
public class demo2 {
    public static void main(String[] args) {
        //对于一个类，访问其父类的静态变量
        //那么只初始化父类，所以只初始化a1,b1没有被初始化,那么
        //static {a=2;}不会被执行
        //输出1
        System.out.println(b1.a);

        new b1();
        //输出2
        System.out.println(b1.a);
        //由于new b1()导致b1被初始化了
    }

}
    class a1{
        static int a=0;
        static {
            a=1;
        }
    }
    class b1 extends a1{
        static {
            a=2;
        }
    }
